package cn.silver.module.message.domain;

import cn.silver.framework.mybatis.annotation.Table;
import cn.silver.framework.tenant.domain.TenantEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.io.Serial;

/**
 * @author zhouxiaobo
 */
@Data
@NoArgsConstructor
@Table(name = "msg_message")
@EqualsAndHashCode(callSuper = true)
@Schema(name = "MsgMessage", title = "系统消息通知")
public class MsgMessage extends TenantEntity {

    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 消息类型
     */
    @Schema(title = "消息类型")
    private String type;
    /**
     * 消息编号
     */
    @Schema(title = "消息编号")
    private String code;
    /**
     * 消息主题
     */
    @Schema(title = "消息主题")
    private String subject;
    /**
     * 推送内容
     */
    @Schema(title = "推送内容")
    private String content;
    /**
     * 发送渠道
     */
    @Schema(title = "发送渠道")
    private String channel;
    /**
     * 消息类别
     */
    @Schema(title = "消息类别")
    private String category;

    /**
     * 关联业务
     */
    @Schema(title = "关联业务")
    private String busId;
    /**
     * 处理地址
     */
    @Schema(title = "处理地址")
    private String busUrl;
    /**
     * 消息模板
     */
    @Schema(title = "消息模板")
    private String templateId;
}
